package com.un.ebs.inventory.domain;

import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import org.springframework.stereotype.Component;
import lombok.Data;
import com.un.ebs.core.metadata.DbField;

/**
 * (InventoryAccount)表实体类
 *
 * @author liubo
 * @since 2020-09-14 09:53:29
 */
@Data
@Component
@TableName("tb_inventory_account")
@SuppressWarnings("serial")
public class InventoryAccount extends Model<InventoryAccount> {

    @TableId(value = "id", type = IdType.UUID)
    private String id;


    @DbField(name = "sku_id", length = 40, precision = 0)
    private String skuId;

    @DbField(name = "account_year", length = -1, precision = 0)
    private Integer accountYear;

    @DbField(name = "account_month", length = -1, precision = 0)
    private Integer accountMonth;

    @DbField(name = "start_qty", length = 18, precision = 6)
    private Double startQty;

    @DbField(name = "start_price", length = 18, precision = 6)
    private Double startPrice;

    @DbField(name = "start_money", length = 18, precision = 6)
    private Double startMoney;

    @DbField(name = "in_qty", length = 18, precision = 6)
    private Double inQty;

    @DbField(name = "in_price", length = 18, precision = 6)
    private Double inPrice;

    @DbField(name = "in_money", length = 18, precision = 6)
    private Double inMoney;

    @DbField(name = "out_qty", length = 18, precision = 6)
    private Double outQty;

    @DbField(name = "out_price", length = 18, precision = 6)
    private Double outPrice;

    @DbField(name = "out_money", length = 18, precision = 6)
    private Double outMoney;

    @DbField(name = "end_qty", length = 18, precision = 6)
    private Double endQty;

    @DbField(name = "end_price", length = 18, precision = 6)
    private Double endPrice;

    @DbField(name = "end_money", length = 18, precision = 6)
    private Double endMoney;

    @DbField(name = "tenant_id", length = 40, precision = 0)
    private String tenantId;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}